package dominioEntity;
import hbt.PersistentObject;

import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import org.hibernate.annotations.LazyCollection;
import org.hibernate.annotations.LazyCollectionOption;


//RemitoProveedor lado Servidor DAO (Persistencia)
@Entity
public class RemitoProveedor extends PersistentObject{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@LazyCollection(LazyCollectionOption.FALSE)
	@ManyToOne(cascade = CascadeType.ALL)
	@JoinColumn(name = "id_ordenCompraProveedor")	
	private OrdenCompraProveedor ordenCompraProveedor;
	
	@LazyCollection(LazyCollectionOption.FALSE)
	@OneToMany(cascade = CascadeType.ALL)
	@JoinColumn(name = "id_RemitoProveedor")	
	private List<ItemRemitoProveedor> itemRemitoProveedor;
	
	private String estado;
	private static String pendiente = "pendiente";
	private static String procesada = "procesada";

	public RemitoProveedor() {
		super();
		this.estado = pendiente;
		// TODO Auto-generated constructor stub
	}


	//Getters & Setters
	public static String getPendiente() {
		return pendiente;
	}
	public static void setPendiente(String pendiente) {
		RemitoProveedor.pendiente = pendiente;
	}
	public static String getProcesada() {
		return procesada;
	}
	public static void setProcesada(String procesada) {
		RemitoProveedor.procesada = procesada;
	}
	public OrdenCompraProveedor getOrdenCompraProveedor() {
		return ordenCompraProveedor;
	}

	public void setOrdenCompraProveedor(OrdenCompraProveedor ordenCompraProveedor) {
		this.ordenCompraProveedor = ordenCompraProveedor;
	}
	public List<ItemRemitoProveedor> getItemRemitoProveedor() {
		return itemRemitoProveedor;
	}
	public void setItemRemitoProveedor(List<ItemRemitoProveedor> itemRemitoProveedor) {
		this.itemRemitoProveedor = itemRemitoProveedor;
	}
	public String getEstado() {
		return estado;
	}
	public void setEstado(String estado) {
		this.estado = estado;
	}


	@Override
	public String toString() {
		return "RemitoProveedor [ordenCompraProveedor=" + ordenCompraProveedor
				+ ", itemRemitoProveedor=" + itemRemitoProveedor + ", estado="
				+ estado + "]";
	}

	
	
}
